/*FUNÇÕES GERAIS E DOS PLUGINS (MUDE AS FUNÇÕES ABAIXO COMO ACHAR NECESSÁRIO)*/

/*Função para ter qualquer código de JS que todos os arquivos precisem*/
function jall()
{
	
}

/*Aplica jcorner*/
function jcorner()
{
	$(".corner").corner();
}

/*Aplica jmask*/
function jmask()
{
	// Força um campo telefone (com a classe telefone) a ser um telefone válido
	$(".telefone").mask("(99)9999-9999");
	// Força um campo data (com a classe data) a ser uma data válida
	$(".data").mask("99/99/9999");
	// Força um campo cpf (com a classe cpf) a ser um cpf válido
	$(".cpf").mask("999.999.999-99");
}

/*Aplica o jquery multifile com textos em português*/
function jmultifile()
{
	$('.multifile').MultiFile({
		STRING: {
		remove: '<img src="<?php echo $urlRaiz?>/css/adm/images/excluir.png" alt="Excluir" />',
		selected:'Selecionado: $file',
		denied:'Inválido arquivo de tipo $ext!'
	}
	});
}

/*Aplica o tooltip*/
function jtooltip()
{
	$('.tooltip').tooltip();
}

/*Aplica o datepicker*/
function jdatepicker()
{
	$('.datepicker').datepicker();		
}

/*
	Código para fazer campos múltiplos.
	Para funcionar com mais de 1 campo múltiplo no mesmo formulário:
	você tem que garantir que diferentes campos múltiplos tenham DIFERENTES TAGS HTMLS COMO PAIS
*/

numero_campos_multiplos = 1; // Inicia a contagem em um

function jcampos_multiplos()
{
	$(".adicionar_campo_multiplo").live('click', function(){
		var campo_multiplo = $(this).parent().children(".campo_multiplo:last"); // Pego o último campo múltiplo antes do link de adicionar
		var campo_multiplo_id = $(campo_multiplo).attr("id").slice(0, -1); // Pego o id do campo múltiplo sem o seu último número
		
		/*Faço copias de cada um mudando apenas o id para um diferente*/
		var campo_multiplo_copia = campo_multiplo.clone().attr("id", campo_multiplo_id + (++numero_campos_multiplos));
		$(this).before(campo_multiplo_copia).before('<a id="deleta_'+campo_multiplo_id+'" name="deleta_'+campo_multiplo_id+'" class="deleta_campo_multiplo" href="#">Excluir</a>').before("<br />");
	});
	
	$(".deleta_campo_multiplo").live('click', function(){
		$(this).prev(".campo_multiplo").remove(); // Remove o campo múltiplo
		$(this).next().remove(); // Remove o <br /> depois desse link
		$(this).remove(); // Remove o link de remover
	});
}

/*Aplica o tinymce*/
function jtinymce()
{
	editorTextoTinyMce();
}

/*Inclui apenas funcionalidades básicas do tiny_mce*/
function simpleTinyMce()
{
	tinyMCE.init({
		mode : "specific_textareas", /*ESSA PARTE DIZ QUE APENAS TEXTAREAS COM A CLASSE ABAIXO TERÃO TINYMCE*/
		editor_selector : "tinymce", /*ESSA PARTE DECIDE QUAL A CLASSE QUE AS TEXTAREAS TERÃO PARA TEREM TINYMCE INCLUÍDAS*/
		theme_advanced_toolbar_location : "top", /*ESSA PARTE DECIDE AONDE AS OPÇÕES FICARÃO, SE EM CIMA OU EMBAIXO DA TEXTAREA*/
		theme_advanced_toolbar_align : "center", /*ESSA PARTE MUDA A POSIÇÃO DAS OPÇÕES, SE SERÃO CENTRALIZADAS, ALINHADAS A ESQUERDA OU A DIREITA*/
		theme : "advanced",
		
		/*Abaixo vem um conjunto de opções, se você removê-las incluirá algumas outras opções extras, como permitir colar imagens no meio do texto */
		theme_advanced_buttons1 :"bold,italic,underline,strikethrough,|,justifyleft,justifycenter,justifyright,justifyfull,|,formatselect,fontselect,fontsizeselect",
		theme_advanced_buttons2 : "bullist,numlist,|,link,unlink|,forecolor,backcolor|,sub,sup,|"
		
		/*DESCOMENTE TODO O CÓDIGO ABAIXO PARA PERMITIR QUE A TEXTAREA CRESÇA DE TAMANHO
		theme_advanced_statusbar_location : "bottom",
		theme_advanced_path : false,
		theme_advanced_resizing : true*/
		
			
	});
}

/*Inclui apenas o suficiente para o tiny_mce virar um editor de texto completo*/
function editorTextoTinyMce()
{
	tinyMCE.init({
		// General options
		mode : "specific_textareas", /*ESSA PARTE DIZ QUE APENAS TEXTAREAS COM A CLASSE ABAIXO TERÃO TINYMCE*/
		editor_selector : "tinymce", /*ESSA PARTE DECIDE QUAL A CLASSE QUE AS TEXTAREAS TERÃO PARA TEREM TINYMCE INCLUÍDAS*/
		theme : "advanced",
		plugins : "imagemanager, pagebreak,style,layer,table,save,advhr,advimage,advlink,emotions,iespell,insertdatetime,preview,media,searchreplace,print,contextmenu,paste,directionality,fullscreen,noneditable,visualchars,nonbreaking,xhtmlxtras,template,inlinepopups,autosave",

		// Theme options
		theme_advanced_buttons1 : "bold,italic,underline,strikethrough,|,justifyleft,justifycenter,justifyright,justifyfull,|,styleselect,formatselect,fontselect,fontsizeselect,|,tablecontrols",
		theme_advanced_buttons2 : "cut,copy,paste,pastetext,pasteword,|,bullist,numlist,|,outdent,indent,blockquote,|,undo,redo,|,link,unlink,image,|,forecolor,backcolor,|,preview,print,fullscreen",
		theme_advanced_buttons3 : "",
		theme_advanced_toolbar_location : "top",
		theme_advanced_toolbar_align : "left",
		theme_advanced_statusbar_location : "bottom",
		theme_advanced_resizing : true,

		// Example word content CSS (should be your site CSS) this one removes paragraph margins
		content_css : "css/word.css",

		// Drop lists for link/image/media/template dialogs
		template_external_list_url : "lists/template_list.js",
		external_link_list_url : "lists/link_list.js",
		external_image_list_url : "lists/image_list.js",
		media_external_list_url : "lists/media_list.js",

		// Replace values for the template plugin
		template_replace_values : {
			username : "Some User",
			staffid : "991234"
		}
	});
}

/*Inclui tudo possivel do tiny_mce*/
function fullTinyMce()
{
	tinyMCE.init({
		// General options
		mode : "specific_textareas", /*ESSA PARTE DIZ QUE APENAS TEXTAREAS COM A CLASSE ABAIXO TERÃO TINYMCE*/
		editor_selector : "tinymce", /*ESSA PARTE DECIDE QUAL A CLASSE QUE AS TEXTAREAS TERÃO PARA TEREM TINYMCE INCLUÍDAS*/
		theme : "advanced",
		plugins : "imagemanager, pagebreak,style,layer,table,save,advhr,advimage,advlink,emotions,iespell,inlinepopups,insertdatetime,preview,media,searchreplace,print,contextmenu,paste,directionality,fullscreen,noneditable,visualchars,nonbreaking,xhtmlxtras,template,wordcount,advlist,autosave",

		// Theme options
		theme_advanced_buttons1 : "save,newdocument,|,bold,italic,underline,strikethrough,|,justifyleft,justifycenter,justifyright,justifyfull,styleselect,formatselect,fontselect,fontsizeselect",
		theme_advanced_buttons2 : "cut,copy,paste,pastetext,pasteword,|,search,replace,|,bullist,numlist,|,outdent,indent,blockquote,|,undo,redo,|,link,unlink,anchor,image,cleanup,help,code,|,insertdate,inserttime,preview,|,forecolor,backcolor",
		theme_advanced_buttons3 : "tablecontrols,|,hr,removeformat,visualaid,|,sub,sup,|,charmap,emotions,iespell,media,advhr,|,print,|,ltr,rtl,|,fullscreen",
		theme_advanced_buttons4 : "insertlayer,moveforward,movebackward,absolute,|,styleprops,|,cite,abbr,acronym,del,ins,attribs,|,visualchars,nonbreaking,template,pagebreak,restoredraft",
		theme_advanced_toolbar_location : "top",
		theme_advanced_toolbar_align : "left",
		theme_advanced_statusbar_location : "bottom",
		theme_advanced_resizing : true,

		// Example content CSS (should be your site CSS)
		content_css : "css/content.css",

		// Drop lists for link/image/media/template dialogs
		template_external_list_url : "lists/template_list.js",
		external_link_list_url : "lists/link_list.js",
		external_image_list_url : "lists/image_list.js",
		media_external_list_url : "lists/media_list.js",

		// Style formats
		style_formats : [
			{title : 'Bold text', inline : 'b'},
			{title : 'Red text', inline : 'span', styles : {color : '#ff0000'}},
			{title : 'Red header', block : 'h1', styles : {color : '#ff0000'}},
			{title : 'Example 1', inline : 'span', classes : 'example1'},
			{title : 'Example 2', inline : 'span', classes : 'example2'},
			{title : 'Table styles'},
			{title : 'Table row 1', selector : 'tr', classes : 'tablerow1'}
		],

		// Replace values for the template plugin
		template_replace_values : {
			username : "Some User",
			staffid : "991234"
		}
	});
}

/*Função que tira a pontuacao de uma string passada e depois retorna essa string*/
function tiraPontuacao(strTexto)
{
	strTexto = strTexto.replace("/[.,:;=+*\&%$#@!?]/g","");
	return strTexto;
}

/*Função para permitir apenas numeros no campo do formulario (tirada do projeto ivento)*/
function tiraLetras(campo,e){
	var keynum;

	if(window.event) // IE
	{
		keynum = e.keyCode
	}
	else if(e.which) // Netscape/Firefox/Opera
	{
		keynum = e.which
	}
	if(keynum>20)
	{
		var texto = String.fromCharCode(keynum);

		if(/([^0-9\.{0,1}]+)/.test(texto)) {
			return false;
		}
		else
		{
			return true;
		}
	}
	else
	{
		document.getElementById(campo).value = document.getElementById(campo).value.replace(/([^0-9\.]+)/, "");
		return true;
	}
}

/*
* Verifica se o valor passado é um inteiro ou não
*/
function isInteger (s) {
	return !isNaN( parseInt( s ) );
}/*Função que tira a pontuacao de uma string passada e depois retorna essa string*/
function tiraPontuacao(strTexto)
{
	strTexto = strTexto.replace("/[.,:;=+*\&%$#@!?]/g","");
	return strTexto;
}

/*Função para permitir apenas numeros no campo do formulario (tirada do projeto ivento)*/
function tiraLetras(campo,e){
	var keynum;

	if(window.event) // IE
	{
		keynum = e.keyCode
	}
	else if(e.which) // Netscape/Firefox/Opera
	{
		keynum = e.which
	}
	if(keynum>20)
	{
		var texto = String.fromCharCode(keynum);

		if(/([^0-9\.{0,1}]+)/.test(texto)) {
			return false;
		}
		else
		{
			return true;
		}
	}
	else
	{
		document.getElementById(campo).value = document.getElementById(campo).value.replace(/([^0-9\.]+)/, "");
		return true;
	}
}

/*
* Verifica se o valor passado é um inteiro ou não
*/
function isInteger (s) {
	return !isNaN( parseInt( s ) );
}
